Department: Global Banking Technology & Operations
Role Summary
As a Senior Big Data Java Engineer, you will contribute to the development of our client's data lake streaming platform on Azure. Working independently within a Feature Team, your primary responsibilities include:
- Development & Architecture: Architect, design, and build Java applications using Kafka Stream and Spark in Azure; develop scalable, resilient data pipelines.
- Quality Coding: Write and maintain high-quality Java code, ensuring adherence to best practices.
- System Design: Focus on scalability and resiliency when designing systems; troubleshoot performance issues in distributed systems managing large data volumes.
- Code Reviews & Team Collaboration: Conduct code reviews, provide feedback, and support team improvements.
- Customer-Focused Solutions: Break down customer requirements with the Product Owner, ensuring alignment with project goals.
- Testing & Deployment: Manage testing, deployment, and production activities, adhering to chapter guidelines for stability.
- Continuous Improvement: Participate in pair programming, write unit and BDD-style tests (JUnit, Mockito, Cucumber), and engage in backlog refinement.
Key Skills & Competencies
- Proficiency with Java, Kafka Streams, Spark, and Spring Boot (or other Java frameworks).
- Expertise in distributed systems design, especially Big Data systems for batch and real-time processing.
- Experience with cloud platforms (AWS or Azure), and tools such as Elastic Search, Kibana, and Kubernetes.
- Strong understanding of RESTful API design and third-party API integration.
- Proficiency with version control systems like Git.
- Agile methodology experience, ideally Scrum.
- Familiarity with automated testing, including test-driven development, unit and integration testing, and BDD.
- Knowledge of continuous integration tools and service-oriented architectures.
- Excellent analytical skills with the ability to simplify complex problems.
- Results-driven and team-oriented with a focus on collaboration and client satisfaction.
Experience & Education
- 7+ years in Java programming at a senior level.
- 3+ years with Spark, Kafka, and cloud technologies.
- Bachelor’s or Master’s degree in Computer Science, Information Technology, or a related technical field.